/**
 * 
 */
package org.gov.vis.data.controller;

import java.util.List;

import org.gov.vis.data.dto.ProcurementSemenDto;
import org.gov.vis.master.controller.BaseCtlr;

/**
 * @author Vishwanath
 *
 */
public interface ProcurementSemenCtlr extends BaseCtlr {
	
	/**
	 * Method called to Add or Edit the PrSemen
	 * @param aiDto
	 * @throws Exception
	 */
	public void addOrEditPrSemen(final ProcurementSemenDto _prSemenDto) throws Exception;
	
	/**
	 * Method called to delete the PrSemen Object based on the passed prSemen Id
	 * @param _prSemenId
	 * @throws Exception
	 */
	public void deletePrSemen(long _prSemenId) throws Exception;
	
	/**
	 * Method called to get the PrSemen based on the passed PrSemen Object
	 * @param prSemenDto
	 * @return
	 * @throws Exception
	 */
	public ProcurementSemenDto getPrSemen(final ProcurementSemenDto _prSemenDto) throws Exception;
	
	/**
	 * Method called to get the list of PrSemen based on the passed PrSemen Object
	 * @param PrSemenDto
	 * @return
	 * @throws Exception
	 */
	public List<ProcurementSemenDto> getPrSemens(final ProcurementSemenDto _prSemenDto) throws Exception;
	
	/**
	 * Method called to search for the PrSemens based on the passed PrSemen Object
	 * @param PrSemenDto
	 * @return
	 * @throws Exception
	 */
	public List<ProcurementSemenDto> searchPrSemens(final ProcurementSemenDto _PrSemenDto) throws Exception; 
	
	/**
	 * Method called to get the ProcurementSemen based on the passed primary key Id
	 * @param _prSemenId
	 * @return
	 * @throws Exception
	 */
	public ProcurementSemenDto getPrSemen(final long _prSemenId) throws Exception;
	
		
	/**
	 * Method called to get the ProcurementSemen based on the passed Breed
	 * @param _prSemenBreed
	 * @return
	 * @throws Exception
	 */
	public ProcurementSemenDto getPrSemenOnBreed(final String _prSemenBreed) throws Exception;
	
	
	/**
	 * Method called to get the PrSemen based on the passed BullNo
	 * @param _PrSemenBullNo
	 * @return
	 * @throws Exception
	 */
	public ProcurementSemenDto getPrSemenOnBullNo(final String _prSemenBullNo) throws Exception;
	
	/**
	 * Mathod Called to get the PrSemen based on the passed code
	 *  @param _prSemenCode
	 * @return
	 * @throws Exception	
	 */    
    public ProcurementSemenDto getPrSemenOnCode(final String _prSemenCode) throws Exception;

}//end ProcurementSemenCtlr
